1. Field of the Invention
This invention relates generally to communications. More particularly, it relates to location-based services.
2. Background of Related Art
Location enabling technology is implemented in a vast majority of today's handheld mobile devices as a result of a Federal Communications Commission (FCC) mandate requiring wireless devices to incorporate location technology, in the event wireless users need to be located throughout use of emergency services, e.g., E911. Location enabling technologies generally implemented in mobile devices include a precise satellite-enabled Global Positioning System (GPS), cell tower positioning, network access points, and several other tracking technologies capable of delivering approximate location of a wireless device. This vast incorporation of location enabling technology in today's handheld mobile devices has consequently led to a growing emergence of location based services (LBS). A location based service (LBS) obtains a geographic location of a wireless device and provides services accordingly.
For instance, a geofence method is an existing location based service (LBS) that monitors location information for a wireless device, and enables an administrator to trigger a predetermined event each instance that monitored device enters/exits a specified geographic location.
To implement a geofence method, an administrator defines a geofence (i.e. a virtual boundary) around a geographic location of interest (e.g., a point on a map, a school campus, a state, etc.), and articulates one or more target devices to monitor against that predefined geofence. A geofence administrator additionally defines one or more entry/exit events for each desired target device/geofence combination.
In operation, whenever a geofence method detects a target device entering/exiting a predefined geofence, the geofence method automatically generates an entry/exit trigger, to trigger delivery of a predetermined entry/exit event defined for that particular target device/geofence combination. An entry/exit event may be, e.g., an advertisement, digital coupon, reminder, etc., triggered to a target device entering/exiting a relevant geofence. Moreover, an entry/exit event may additionally/alternatively be, e.g., an alert, reminder, notification, etc., triggered to a relevant geofence administrator.
A conventional geofence method periodically retrieves sample location points for a given target device to determine that device's geographic location and trigger entry/exit events accordingly. More particularly, the geofence method uses three consecutive fast location fixes to evaluate a geofence side condition (e.g. inside, outside, unknown, etc.) for a specified target device. If the value of a geofence side condition is ‘inside’ for a particular target device, that device is currently located inside a predefined geofence. Likewise, if the value of a geofence side condition is ‘outside’ for a particular target device, that device is currently located outside a predefined geofence. An entry/exit event is triggered whenever a change in side condition is detected for a particular target device.
FIG. 19 depicts a conventional geofence method call flow.
In particular, a geofence method first determines an initial geofence side condition (e.g. ‘inside’ or ‘outside’ a predefined geofence) for a target device based on sample location points previously retrieved for that particular device, as shown in step 1. Following determination of an initial geofence side condition, the geofence method enters a slow fix mode and retrieves a slow location fix (i.e. a sample location point) for the specified target device, as depicted in step 2. In step 3, the geofence method analyzes the slow location fix (i.e. sample location point) retrieved in step 2, to determine a current geofence side condition (e.g. inside, outside, unknown, etc.) for the relevant target device.
In step 4, the geofence method compares the current geofence side condition determined in step 3 to the initial geofence side condition determined in step 1. If the current geofence side condition and the initial geofence side condition have the same value (i.e. both side conditions are ‘inside’ or both side conditions are ‘outside’), the geofence method call flow loops back to step 1 and the value of the initial geofence side condition (e.g. ‘inside’ or ‘outside’) remains unchanged.
Alternatively, if the current geofence side condition (e.g. ‘inside’ or ‘outside’) determined in step 3 and the initial geofence side condition determined in step 1 differ, the geofence method enters a fast fix mode to investigate a potential side change.
To investigate a potential side change, the geofence method retrieves three consecutive fast location fixes for the specified target device, as depicted in steps 5, 6, and 7. The geofence method subsequently evaluates three individual side conditions for each fast location fix retrieved, and then analyzes retrieved location fixes and evaluated side conditions to determine a final geofence side condition for the specified target device, as depicted in step 8. If location error areas for all three fast location fixes are overlapped with the geofence independently, the geofence method determines that the target device is located inside that predefined geofence.
FIG. 20 depicts three fast location fixes retrieved for a target device that is determinately located inside a predefined geofence.
In particular, if location error areas 201 for all three fast location fixes retrieved for a target device are independently overlapped with a geofence 203 (as depicted in FIG. 20), the final geofence side condition for that target device is ‘inside’.
FIG. 21 depicts three fast location fixes retrieved for a target device that is determinately located outside a predefined geofence.
In particular, if location error areas 205 for all three fast location fixes retrieved for a target device are not independently overlapped with a geofence 203 (as depicted in FIG. 21), the final geofence side condition for that target device is ‘outside’.
In step 9 (FIG. 19), the geofence method compares the final geofence side condition determined in step 8 to the initial geofence side condition determined in step 1. If the final geofence side condition and the initial geofence side condition have the same value (i.e. both side conditions are ‘inside’ or both side conditions are ‘outside’), the geofence method call flow loops back to step 1 and the value of the initial geofence side condition (e.g. ‘inside’ or ‘outside’) remains unchanged.
Alternatively, if the final geofence side condition determined in step 8 and the initial geofence side condition determined in step 1 differ, an appropriate geofence event is triggered, as depicted in step 10.
In step 11, the geofence method sets the value of the initial geofence side condition equivalent to the value of the final geofence side condition (determined in step 8), and the geofence method call flow loops back to step 1.
A user may desire to implement a conventional geofence method for any of a multitude of reasons. For instance, a geofence method may be implemented to trigger digital coupons to a target device when that device is within close proximity to a predefined geofence, i.e., a store, restaurant, city, etc. Moreover, a geofence method may enable family members to monitor location information for other family members and/or employers to track employee whereabouts. In addition, a geofence method may trigger offers/discounts to participating consumers for businesses/stores within those consumers' general vicinity. Furthermore, a geofence method may enable law enforcement to better monitor tracking devices and/or a homeowner to remotely activate/deactivate home appliances when a relevant device enters/exits a relevant geofence.
Although a geofence method does encompass numerous advantageous uses, current geofence methods unfortunately experience occasional trigger misfires as a result of data variability and/or location blunders. In addition, current geofence methods occasionally generate delayed/missed entry triggers when performed under urban and/or indoor conditions. As a result, the present inventors have appreciated that there is a need for an improved geofence method that generates entry/exit geofence triggers more accurately without adversely affecting battery consumption.